package com.rainszj.pojo.po;


import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 评论类
 *
 * @author rainszj
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Comment implements Serializable {

    private Long id;
    /**
     * 昵称
     */
    private String nickname;
    /**
     * 邮箱
     */
    private String email;
    /**
     * 头像
     */
    private String avatar;
    /**
     * 评论的内容
     */
    private String content;
    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 外键 博客 ID
     */
    private Long blogId;

    private Long parentCommentId;

    /**
     * 一对多，多的一方
     */
    private Blog blog;

    // 自关联 一对多
    /**
     * 一个父评论包含多个子评论
     */
    private List<Comment> replyComments = new ArrayList<Comment>();

    /**
     * 一个子评论只能有一个父评论
     */
    private Comment parentComment;

    /**
     * 是否是博主
     */
    private boolean adminComment;

}
